#ifndef _POSTGRES_TABLEATTRIBUTE_DESCRIPTION_H_
#define _POSTGRES_TABLEATTRIBUTE_DESCRIPTION_H_

#include <buildspec.h>
#include <Client/ClientUtils/Network/AbstractRDBAccess.h>
#include <boost/shared_ptr.hpp>

namespace GST {
namespace ClientUtils {


struct GST_API_EXPORT PGAttributeDesc
	: public AbstractRDBAttributeDesc
{

	PGAttributeDesc(const TableAttributeDesc & desc, bool is_primaryKey=false)
		: AbstractRDBAttributeDesc(desc, is_primaryKey)
	{
	}

	virtual std::string Type2DDL() const;
	virtual TableAttributeDesc * clone() const;
};
typedef boost::shared_ptr<PGAttributeDesc> PGAttributeDescPtr;

} //of ns ClientUtils
} //of ns GST

#endif //_POSTGRES_TABLEATTRIBUTE_DESCRIPTION_H_